package com.naiterui.ehp.bp.bo.recommend.param;

import lombok.Data;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;

/**
 * 处方审核参数BO
 *
 * @author guoyongxiang
 * @date 2019-07-30 10:43
 * @since 1.0.0
 */
@Data
public class RecomAuditParamBO {

    /**
     * 审核状态-通过:{@value}
     */
    public static final int AUDIT_STATUS_PASS = 1;
    /**
     * 审核状态-不通过:{@value}
     */
    public static final int AUDIT_STATUS_REJECT = 2;

    /**
     * 强制审核(不电子签名):{@value}
     */
    public static final int FORCE_TRUE = 1;

    @NotNull(message = "处方ID不能为空")
    private Long recomId;

    /**
     * 审核状态( 通过:{@link RecomAuditParamBO#AUDIT_STATUS_PASS}, 不通过:{@link RecomAuditParamBO#AUDIT_STATUS_REJECT}})
     */
    @Min(AUDIT_STATUS_PASS)
    @Max(AUDIT_STATUS_REJECT)
    @NotNull(message = "审核状态不能为空")
    private Integer status;

    /**
     * 审核原因(审核不通过{@link RecomAuditParamBO#AUDIT_STATUS_REJECT}时必填)
     */
    private String remark;

    /**
     * 药师ID
     */
    @NotNull(message = "药师ID不能为空")
    private Long pharmacistId;

    /**
     * 签署密码
     */
    private String signPwd;

    /**
     * 是否强制通过(强制审核不电子签名) {@link RecomAuditParamBO#FORCE_TRUE}
     */
    private Integer force;

    /**
     * 操作人
     */
    private String operator;

    /**
     * 唯一标识
     */
    private String uniqueId;
}
